package com.cjhme.system.impl.dao.position;

import java.util.List;
import java.util.Map;

import com.cjhme.common.model.base.DataPaging;
import com.cjhme.common.model.base.TreeNodeBean;
import com.cjhme.common.model.position.PositionBean;

public interface PositionDao {

	/**
	 * 查询所有岗位结构
	 * 
	 * @return
	 */
	public List<TreeNodeBean> queryPositionList();
	
	
	/**
	 * 根据条件查询岗位
	 * @param parameter
	 * @return
	 */
	public List<TreeNodeBean> queryPositionByCondition(Map<String,Object> parameter);
	
	/**
	 * 根据条件分页查询岗位
	 * @param parameter
	 * @return
	 */
	public DataPaging<Object> queryPositionByConditionPaging(DataPaging<Object> pageParameter);
	
	/**
	 * 判断岗位是否存在
	 * @param parameter
	 * @return
	 */
	public int queryPositionIsExists(Map<String,Object> parameter);
	
	/**
	 * 添加岗位
	 * @param parameter
	 * @return
	 */
	public int savePosition(Map<String,Object> parameter);
	
	/**
	 * 根据id查询岗位 
	 * @param parameter
	 * @return
	 */
	public PositionBean queryPositionByPositionId(Map<String,Object> parameter);
	
	/**
	 * 根据id修改岗位
	 * @param parameter
	 * @return
	 */
	public int updatePositionByPositionId(Map<String,Object> parameter);
	
	/**
	 * 根据ids删除岗位
	 * @param parameter
	 * @return
	 */
	public int deletePositionByIds(Map<String,Object> parameter);
	
	
	/**
	 * 根据id移动岗位
	 * @param parameter
	 * @return
	 */
	public int updatePositionParentPositionIdById(Map<String,Object> parameter);
	
	/**
	 * 根据组织ids删除岗位用户映射
	 * @param parameter
	 * @return
	 */
	public int deletePositionUserMappingByIds(Map<String,Object> parameter);
}
